package JDBC.dao;

import java.sql.Connection;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;

import com.mysql.jdbc.PreparedStatement;

import JDBC.Conexao;
import JDBC.dto.UfDTO;
import JDBC.exception.PersistenciaException;

public class UfDao {

	public List<UfDTO> listaEstados() throws PersistenciaException{
		
		List<UfDTO> lista = new ArrayList<UfDTO>();
		try{
			Connection connection =  Conexao.getInstance().getConnection();
			
			String sql = "select * from tb_uf";
			
			PreparedStatement pst = (PreparedStatement) connection.prepareStatement(sql);
			ResultSet resultado = pst.executeQuery();
			
			while(resultado.next()){
				
				UfDTO ufDTO = new UfDTO();
				ufDTO.setIdUf(resultado.getInt(1));
				ufDTO.setSiglaUf(resultado.getString(2));
				ufDTO.setDescricao(resultado.getString(3));
				
				lista.add(ufDTO);
			}
			connection.close();
		} catch(Exception e){
			e.printStackTrace();
			throw new PersistenciaException(e.getMessage());
		}
		return lista;
	}
}
